#include "garamond10.h"
#include <nds.h>

using namespace WoopsiUI;

static const u16 Garamond10_glyphdata[384] = {
/* '!' */	0xFA00,
/* '"' */	0xB680,0x0000,0x0000,
/* '#' */	0x244B,0xF92F,0xE912,0x0000,0x0000,0x0000,
/* '$' */	0x27AE,0x233E,0x2000,
/* '%' */	0x44A4,0xA84A,0x1515,0x2200,0x0000,0x0000,
/* '&' */	0x7848,0x7853,0x8A84,0x7B00,0x0000,0x0000,
/* ''' */	0xE000,
/* '(' */	0x2A49,0x2444,0x0000,
/* ')' */	0x2555,0x8000,
/* '*' */	0x27FE,0x4000,0x0000,0x0000,
/* '+' */	0x1020,0x47F1,0x0204,0x0000,0x0000,0x0000,
/* ',' */	0x000D,0x8000,
/* '-' */	0x000E,0x0000,0x0000,
/* '.' */	0x0200,
/* '/' */	0x1222,0x4448,0x8000,
/* '0' */	0x6999,0x9960,0x0000,
/* '1' */	0x5924,0xB800,0x0000,
/* '2' */	0x6484,0x4447,0xC000,0x0000,
/* '3' */	0xE221,0x19E0,0x0000,
/* '4' */	0x1195,0x2F88,0x4000,0x0000,
/* '5' */	0x6471,0x11E0,0x0000,
/* '6' */	0x248A,0x9960,0x0000,
/* '7' */	0xF922,0x2440,0x0000,
/* '8' */	0x7996,0x9960,0x0000,
/* '9' */	0x6999,0x5240,0x0000,
/* ':' */	0x2200,
/* ';' */	0x080D,0x8000,
/* '<' */	0x005D,0x0704,0x0000,0x0000,
/* '=' */	0x003E,0x0F80,0x0000,0x0000,
/* '>' */	0x041C,0x1740,0x0000,0x0000,
/* '?' */	0xC4F8,0x2000,0x0000,
/* '@' */	0x1E18,0x440A,0x3A92,0xA92A,0x51F9,0x408F,0xC000,0x0000,
/* 'A' */	0x1050,0xA1C4,0x48BB,0x8000,0x0000,0x0000,
/* 'B' */	0xF914,0x5E45,0x1F80,0x0000,0x0000,
/* 'C' */	0x3918,0x2081,0x03C0,0x0000,0x0000,
/* 'D' */	0xF889,0x0A14,0x28BE,0x0000,0x0000,0x0000,
/* 'E' */	0xFC89,0x4385,0x087F,0x0000,0x0000,0x0000,
/* 'F' */	0xFD57,0x1441,0x0E00,0x0000,0x0000,
/* 'G' */	0x388A,0x0408,0xE88F,0x0000,0x0000,0x0000,
/* 'H' */	0xE742,0x427E,0x4242,0xE700,0x0000,0x0000,
/* 'I' */	0xE924,0xB800,0x0000,
/* 'J' */	0xE924,0x9250,0x0000,
/* 'K' */	0xEE48,0x5060,0x5844,0xE700,0x0000,0x0000,
/* 'L' */	0xE104,0x1041,0x1F80,0x0000,0x0000,
/* 'M' */	0xC3B1,0x98CA,0xA552,0xABAE,0x0000,0x0000,0x0000,
/* 'N' */	0xC762,0x5252,0x4A46,0xE200,0x0000,0x0000,
/* 'O' */	0x388A,0x0C18,0x288E,0x0000,0x0000,0x0000,
/* 'P' */	0xF252,0xE423,0x8000,0x0000,
/* 'Q' */	0x388A,0x0C18,0x288E,0x0C06,0x0000,0x0000,
/* 'R' */	0xF891,0x2385,0x0939,0x8000,0x0000,0x0000,
/* 'S' */	0x79C2,0x19E0,0x0000,
/* 'T' */	0x83FE,0x4881,0x0204,0x1C00,0x0000,0x0000,
/* 'U' */	0xEE89,0x1224,0x488E,0x0000,0x0000,0x0000,
/* 'V' */	0xEE89,0x1142,0x8504,0x0000,0x0000,0x0000,
/* 'W' */	0xDED2,0x9449,0x122A,0x8AA1,0x1000,0x0000,0x0000,0x0000,
/* 'X' */	0xEE88,0xA082,0x893B,0x8000,0x0000,0x0000,
/* 'Y' */	0xE688,0xA081,0x020E,0x0000,0x0000,0x0000,
/* 'Z' */	0x7E21,0x0421,0x1FC0,0x0000,0x0000,
/* '[' */	0xEAAA,0xB000,
/* '\' */	0x8844,0x4222,0x1000,
/* ']' */	0xD555,0x7000,
/* '^' */	0x2115,0x1000,0x0000,0x0000,
/* '_' */	0x0000,0x0000,0x0000,0xFC00,0x0000,
/* '`' */	0x9000,0x0000,
/* 'a' */	0x00E2,0x6AF0,0x0000,
/* 'b' */	0xC21C,0x94A5,0xC000,0x0000,
/* 'c' */	0x0079,0x8870,0x0000,
/* 'd' */	0x3095,0x6949,0xE000,0x0000,
/* 'e' */	0x0069,0xF870,0x0000,
/* 'f' */	0x3A3C,0x8423,0x8000,0x0000,
/* 'g' */	0x0019,0x393A,0x0F8F,0x8000,
/* 'h' */	0xC105,0x9A49,0x2EC0,0x0000,0x0000,
/* 'i' */	0x4324,0xB800,0x0000,
/* 'j' */	0x4D55,0x6000,
/* 'k' */	0xC216,0xC52B,0x6000,0x0000,
/* 'l' */	0xC924,0xB800,0x0000,
/* 'm' */	0x0000,0x36CD,0xA492,0x4BB6,0x0000,0x0000,0x0000,
/* 'n' */	0x000D,0x9A49,0x2EC0,0x0000,0x0000,
/* 'o' */	0x0069,0x9960,0x0000,
/* 'p' */	0x0034,0xD4A5,0xC847,0x0000,
/* 'q' */	0x0015,0x6949,0xC211,0xC000,
/* 'r' */	0x00D6,0x44E0,0x0000,
/* 's' */	0x03C6,0x7800,0x0000,
/* 't' */	0x0BA4,0x9800,0x0000,
/* 'u' */	0x000D,0x9249,0x66C0,0x0000,0x0000,
/* 'v' */	0x0037,0x1528,0x8000,0x0000,
/* 'w' */	0x0000,0xDB52,0x4A5A,0x2400,0x0000,0x0000,
/* 'x' */	0x0036,0xA22B,0x6000,0x0000,
/* 'y' */	0x0037,0x1528,0x8426,0x0000,
/* 'z' */	0x003E,0x2227,0xC000,0x0000,
/* '{' */	0x2928,0x9244,0x0000,
/* '|' */	0xFFC0,
/* '}' */	0x8922,0x9250,0x0000,
/* '~' */	0x0033,0x7000,0x0000,0x0000,
/* 0x7F */	0x00F9,0x999F,0x0000,
};

static const u16 Garamond10_offset[95] = {
    0,    1,    4,   10,   13,   19,   25,   26,   29,   31,   35,   41,   43,   46,   47,   50,
   53,   56,   60,   63,   67,   70,   73,   76,   79,   82,   83,   85,   89,   93,   97,  100,
  108,  114,  119,  124,  130,  136,  141,  147,  153,  156,  159,  165,  170,  177,  183,  189,
  193,  199,  205,  208,  214,  220,  226,  234,  240,  246,  251,  253,  256,  258,  262,  267,
  269,  272,  276,  279,  283,  286,  290,  294,  299,  302,  304,  308,  311,  318,  323,  326,
  330,  334,  337,  340,  343,  348,  352,  358,  362,  366,  370,  373,  374,  377,  381
};

static const u8 Garamond10_width[95] = {
 1, 3, 7, 4, 8, 8, 1, 3, 2, 5, 7, 2, 3, 1, 4, 4,
 3, 5, 4, 5, 4, 4, 4, 4, 4, 1, 2, 5, 5, 5, 3,10,
 7, 6, 6, 7, 7, 6, 7, 8, 3, 3, 8, 6, 9, 8, 7, 5,
 7, 7, 4, 7, 7, 7,10, 7, 7, 6, 2, 4, 2, 5, 6, 2,
 4, 5, 4, 5, 4, 5, 5, 6, 3, 2, 5, 3, 9, 6, 4, 5,
 5, 4, 3, 3, 6, 5, 8, 5, 5, 5, 3, 1, 3, 5, 4
};

Garamond10::Garamond10(u8 fixedWidth) : PackedFont1 (
	33,
	127,
	Garamond10_glyphdata,
	Garamond10_offset,
	Garamond10_width,
	12,
	3,
	6,
	10
) {
	if (fixedWidth) setFontWidth(fixedWidth);
};
